Context Engineering
title Context Engineering
type concept
category tech
tags AI工程上下文上下文管理
created 2026-04-13
sources 4
Context Engineering
定义
为模型动态构建整个上下文环境的管理工程,包括相关文件、历史对话、工具定义、知识库检索结果等,让模型在做每一个决策时都能看到它需要看到的信息。由 Andrej Karpathy 和 Shopify CEO Tobi Lütke 在 2025 年提出。
在构建一个 95 分的 Agent 系统中,Context Engineering 可以将效果从 70+ 分提升到 80~85 分。
与相关概念的关系
| 概念 | 时间 | 说明 |
|---|---|---|
| Prompt Engineering | 2022-2024 | 精心构造单次指令 |
| Context Engineering | 2025 | 为每个决策点动态构建上下文 |
| Harness Engineering | 2026年2月 | 设计完整的控制系统(包含 Context Engineering) |
核心问题
- 检索失败(2023 斯坦福 Lost in the Middle)→ RAG 方案
- 长度本身有害(2025 论文)→ 压缩上下文、管理窗口、浓缩历史
- 多轮迷失(2025 ICLR)→ 定期强制验证、以仓库为唯一事实来源
关键问题:上下文长度本身就在伤害推理
即使把所有无关内容遮掉强迫模型只看需要的信息,性能还是滑坡 13.9% 到 85%。即使替换成空白符结果依然如此。问题不在找不到信息,而是上下文的纯长度本身就在伤害推理。
与 Harness Engineering 的关系
Harness Engineering 包含 Context Engineering,但在更高层面运作:
- Prompt Engineering:教你怎么写一封好邮件
- Context Engineering:教你怎么把相关附件都带上
- Harness Engineering:教你怎么搭建整个办公室让员工能持续稳定工作
Claude Code 的实践
CLAUDE.md 项目说明
给 Claude Code 写的"项目说明书"和"行为规范",内容会被注入到 System Prompt 中,优先级很高。
四种路径:
- 个人通用偏好类:
~/.claude/CLAUDE.md,全局人设,跨项目生效 - 项目共享规范:项目根目录下的
CLAUDE.md,团队协作基石,提交到 Git - 个人私有指令:
CLAUDE.local.md,不该公开但必需的上下文,不提交到 Git - 按文件类型分类的规则:
.claude/rules/*.md目录,按文件类型或业务领域进行拆分
三层渐进式压缩体系
按照激进程度递增,在"保留关键信息"与"节省 token 成本"之间找到平衡:
- Layer 1: MicroCompact(微压缩):无 LLM 调用,纯规则驱动,极致轻量
- Layer 2: Session Memory Compact(会话记忆压缩):基于已有会话记忆进行替换,零额外推理成本
- Layer 3: Full LLM Compact(完全压缩):调用 LLM 生成结构化摘要,精度最高但成本也最高
自动压缩触发机制:设定安全缓冲水位线(AUTOCOMPACT_BUFFER_TOKENS = 13,000),当上下文窗口剩余空间低于这个阈值时,自动介入判断。分级回退策略:首选 Session Memory Compact,降级到 Full LLM Compact。
Memdir 结构化记忆系统
将记忆明确拆解为四种核心类型:
- User(用户级):记录用户的个人偏好、操作习惯及特定指令风格
- Feedback(反馈级):存储模型行为的修正记录和历史纠错案例
- Project(项目级):固化项目层面的技术选型、架构决策和约束条件
- Reference(参考级):沉淀通用的文档片段和代码模式
LLM-in-the-loop 的检索策略:使用 Sonnet 模型充当"图书管理员",对候选记忆进行语义相关性判断,强制约束只返回最多 5 条最相关的记忆。